1. Field of the Invention
The present disclosure relates to quantum computing and, more particularly, to a control system architecture for controlling qubits.
2. Description of Related Art
A “quantum computer” is an apparatus for information processing or computation that uses the quantum mechanical state of a physical system to represent the logical state of the apparatus. Quantum computing is an interdisciplinary field of research that seeks to develop technologies that can harness the inherent capacity of quantum systems to do massively parallel processing of information. Considerable research effort has been directed toward developing quantum computers, given that ideal quantum computers have been shown to be capable of carrying out certain information processing tasks more rapidly than ordinary digital (classical) computers and have the potential to efficiently solve problems believed to be intractable on classical computers.
In a classical computer, the logical state of the computer is represented in binary form as a “0” or “1”. A classical computer encodes information in a series of bits for computation that are normally manipulated via Boolean logic. In a classical computer, the basic unit of a computation is a logic gate, which performs a logic operation on one or more logic inputs and produces a single logic output. In a quantum computer, the fundamental unit of information is a quantum two-state system, called a “quantum bit” or “qubit”. A qubit is the counterpart in quantum computing to the binary digit or bit of classical computing.
A quantum computer exploits the intrinsic parallelism of quantum physics in which the quantum state of a single object can behave as if it exists simultaneously in many possible classical configurations. Unlike classical bits, the qubit can exist not only in a state corresponding to the logical state 0 or 1 but in states corresponding to a superposition of these classical states, with a numerical coefficient representing the probability for each state. Hence, in a sense, the qubit can store the values 0 and 1 simultaneously.
Quantum computing generally involves initializing the states of N qubits, creating controlled entanglements among them, allowing these states to evolve, and reading out the states of the qubits after the evolution. The energy states of a qubit are generally referred to as the basis states of the qubit. A quantum computer uses the basis states of a quantum system, such as the “ground state” and “first excited state” abstracted as “|0>” and “|1>”, to perform a quantum computation. N qubits connected together could manipulate exponentially more information than N classical bits, although a hardware implementation of a large-scale quantum computer has not yet been realized.
An element in the search for practical quantum computer designs is finding an improved hardware implementation of the qubit. After successes with few-qubit systems, including demonstration of the Shor factorization algorithm with NMR (Nuclear Magnetic Resonance)-based techniques, existing qubit implementations (such as by NMR) have run into limitations of non-scalability.
Data loss or corruption can occur in a quantum computer due to interaction of qubits with particles in the environment causing changes in the qubit's quantum mechanical state. The tendency of a quantum computer to decay from a given state into an incoherent state as qubits interact, or entangle, with the environment is called “decoherence”. If the rate of decoherence is small enough, it may be possible to use quantum error correcting codes to correct errors. However the use of quantum error correcting codes brings with it the cost of an increased number of required qubits.
Like an ordinary classical computer, in a quantum computer, only a fraction of the qubits will be required to operate at any one time. The selection of which logic gates in a classical computer, or which qubits in a quantum computer, to operate at any given stage during an operation or algorithm requires a control system and control system architecture. This same control system must provide timing control for the single and multiple gate operations of the computer. The control system design and specification will depend intimately on the nature of the gates being controlled, be they classical or quantum gates.
To perform computations, a quantum computer using Josephson-junction-based qubits, for example, must operate at temperatures near absolute 0 K (typically 5 mK to 30 mK), and so multiplexing schemes for arrays of qubits are needed that also work at low temperatures. A conventional CMOS or superconducting SFQ (Single Flux Quantum) based multiplexer can operate at such low temperatures, but the heat generated by the multiplexer will be so large as to heat the multiplexer and the qubits beyond the temperature at which the qubits cease to work. Today's quantum computers avoid this issue by having the multiplexer in a room temperature environment and running a number of wires, e.g. 16 wires/qubit, between each one of the qubits working at typically 30 mK and the multiplexer at room temperature. Since the number of qubits currently being demonstrated is limited to 3, the number of wires to the qubits is relatively small and manageable. However, to build a quantum computer capable of solving actual problems, for example, a quantum computer using 1,000,000 qubits, the number of wires running from the qubits working at 30 mK to room temperature becomes unmanageable.
A need exists for improved control methods and control systems for controlling qubits in a quantum computer. There is a need for improved methods of multiplexing signals at the quantum computer operating temperature that do not generate excessive heat and that provide the requisite signal fidelity and addressability to enable operation of a quantum computer.